package cc.linker.steplink.crm.merchanth5.dao;

import org.apache.ibatis.annotations.Param;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

public interface MaiBaoLaDao {
    void insertGoods(Map<String, Object> map);

    int countCustomerId(String customerId);

    void updateGoods(Map<String, Object> map);

    Map<String, Object> getGoodsByCustomerId(String customerId);

    void updateSaler(String customerId);

    Integer getGoodsType(String goodsId);

    Map<String, Object> getGoodsByGoodsId(String goodsId);

    Map<String, Object> getGoodsQuotaInfoByGoodsId(@Param("goodsId") String goodsId);

    void updateGoodsStatusByCustomerId(String customerId);

    void updateGoodsStatusByGoodsId(String goodsId);

    List<Map<String, Object>> getGoodsListByCustomerId(String customerId);

    String getEnterpriseNameByCustomerId(String customerId);

    String getPidByCid(String customerId);

    String getNameByCustomerId(String pid);

    String getRebateRfByCid(String pid);

    String getPidByOrderId(String orderId);

    String getRebateByCid(String pid);

    void cleanGoodsBindArticle(String goodsId);

    Integer getQuotaByUserId(String adminId);

    Integer getQuotaByCustomerId(String customerId);

    /**
     * 根据goodsId获取商品封禁状态
     */
    String getGoodsBannedByGoodsId(Long goodsId);

    String getEnterpriseNameByOrgId(String orgId);

    Map<String, Object> getBelongByGoodsId(String goodsId);

    Map<String, Object> linkInfo(@Param("orgId") String orgId,@Param("customerId") String customerId);

    Map<String, Object> serviceInfo(Map<String, Object> param);

    String getBusinessName(@Param("orgId") String orgId,@Param("customerId") String customerId);

    String getAlias(String orgId);

    int checkCustomerAccountIden(Map<String, Object> param);

    Integer checkCustomerAccount(Map<String, Object> param);

    Integer getPayModeByOrgId(String orgId);

    Map<String, Object> getShopName(@Param(value = "orgId") String orgId, @Param(value = "customerId") String customerId, @Param(value = "type") String type);

    Map<String, Object> getCheckSwitch(String orgId);

    void addCheckInfo(Map<String, Object> map);

    List<Map<String, Object>> checkList(Map<String, Object> params);

    void checkInfo(Map<String, Object> params);

    String getBindPhoneById(String id);

    String getPublicNameByOrgId(String orgId);

    void addRefundExpress(Map<String, Object> map);

    Map<String, Object> refundInfo(Map<String, Object> param);

    Map<String, Object> getRefundByOrgIdAndCustomerId(@Param(value = "orgId") String orgId, @Param(value = "belongId") String belongId);

    void addConsult(Map<String, Object> param);

    String getRefundPhoneByRecId(String recId);

    Map<String, Object> getRefundDetail(Map<String, Object> params);

    List<Map<String, Object>> consultList(Map<String, Object> param);

    String getGoodsIdByProtectCode(String protectCode);

    void cancelRefund(String recId);

    String getRemindPhoneByCid(Map<String, Object> map);

    void cancelOrderRefund(Map<String, Object> param);

    String getRefundCount(Map<String, Object> param);

    Map<String, Object> getOrderInfoByRecId(Long recId);

    List<Map<String, Object>> getExerciseByGoodsId(String goodsId);

    Integer countUnpaidGoodsNum(@Param("goodsId") String goodsId, @Param("customerId") String customerId);

    List<Map<String, Object>> getCustomerInfoByOrgId(String orgId);

    Map getAppConfigurateInfo(String orgId);

    void insertAppConfigurate(Map<String, Object> params);

    void updateAppConfigurate(Map<String, Object> params);

    Integer getAppCount(String orgId);

    Map<String, Object> getAppCustomerByCid(String customerId);

    Integer checkOldPhone(@Param(value = "phone") String phone,@Param(value = "orgId") String orgId);

    String getAliasByLinker();

    List<Map<String, Object>> getRefundInfoList(Integer recId);

    String getLeastTemplateFee(@Param(value = "freightTemplateId") String freightTemplateId);

    String getFreightTemplateNameById(String freightTemplateId);

    Integer getRefundAmountStatus(Map<String, Object> param);

    String getBindPhoneByCustomerId(String customerId);

    String getOriginalGoodsId(String goodsId);

    Integer getCouponGoodsType(@Param("couponId") String couponId);

    Map<String, Object> getMallInfo(@Param("orgId") String orgId,@Param("mallsBelongId")  String mallsBelongId);

    Integer getUSerLevelByCustomerId(@Param("customerId") String customerId);

    Integer getUSerLevelDayByCustomerId(@Param("customerId") String customerId,@Param("level")  Integer level);

    Integer getVipCountByCustomerId(@Param("customerId") String customerId,@Param("vipId")  Long vipId);

    Integer getVipDayByCustomerId(@Param("customerId") String customerId,@Param("vipId")  Long vipId);

    String getVipNameByVipId(@Param("vipId") Long vipId);

    String getVipNameByLevelOrder(@Param("level") Integer level,@Param("orgId")  String orgId);

    List<Map> goodsList(@Param("goodsIds") String goodsIds);

}
